1. Field of the Invention
The present invention relates to an arrangement and method whereby, in a communications system, resources are allocated to a number of competing resource consumers having preferably different assignment priorities. This is done without requiring a deterministic operating system, such as a real-time operating system, or a defined communications protocol in the form of a handshake protocol. In particular, services of a switching device are assigned via a CTI interface to service features or applications in a decentralized device of the communications system.
2. Description of the Prior Art
Various interfaces between switching devices and external control computers are known. By way of example, the CSTA, TAPI or JTAPI protocol can be used on a CTI connection (Computer Telephony Integration).
This involves CTI protocols from different manufacturers. The specific meanings of the abbreviations are as follows:
CSTA: Computer Supported Telephony Application. A protocol specified by the ECMA (European Computer Manufacturers Association).
TSAPI: Telephony Services Application Programming Interface, an adaptation of CSTA by Novell.
TAPI: Telephony Application Programming Interface, an interface from Microsoft.
JTAPI: Java Telephony Application Programming Interface. A protocol specified by the ECTF (Enterprise Computer Telephony Forum).
At present, in the case of CTI applications, actions are triggered by event messages on the part of the switching device. The event messages are multiplexed and made available to the relevant applications. These applications either react with services to the event messages or else behave passively. A conflict occurs if a number of mutually competing applications wish to react differently to an event message. In the case of a number of applications running in parallel, with different response times governed by the operating system, principally the following two problems arise:
1. It is not certain that the first application which receives the event message x is also the first application which responds thereto.
2. It cannot be determined in advance when all of the applications have concluded their actions in respect of the event message x, since no acknowledgement mechanism is provided as standard via the CTI interface.
These problems have not been avoided hitherto with the currently known protocols CSTA, TAPI or JTAPI. As a rule, the assignment of resources and resource consumers has been effected deterministically. There are essentially three solution variants that are considered for such deterministic assignment.
First, by using a real-time operating system, it can be ensured that event messages sent first are actually answered first. Prioritizable processing by the resource requesters can be ensured here by the event messages first being delivered to higher-priority resource requestors. In this case, a resource requestor having the lowest priority is the last to receive a corresponding event message.
Prioritizable assignment likewise can be ensured by a handshaking mechanism. In this case, it is assumed that each received event message must be acknowledged by a corresponding potential resource requester. This acknowledgement can be effected either by outputting a resource request or by outputting a simple confirmation of reception. In a solution of this type, a central assignment device collects the acknowledgements. By access to a priority list which is present for the potential resource requestors, a respective resource is then made available to that resource requestor which has the highest priority.
Likewise, it is possible to agree to a fixed time period in which all potential resource requestors have to respond to an event message. After this time period has elapsed, a central resource assignment device can then assume that all resource requests from the individual resource requestors must have arrived. Using a priority list, the resource is then assigned to that resource requestor which has the highest priority. Resource requestors of this type may be, for example, applications or service features.
The above-described alternatives have various disadvantages, however. Temporal sequential processing of event messages and resource requests across process boundaries is not ensured by a standard operating system, for which reason a proprietary solution would have to be chosen. A proprietary solution would likewise have to be used if the intention were for a handshaking mechanism to ensure the prioritization, because no CTI specification contains the requirement that received event messages have to be acknowledged. Adherence to a defined time period as waiting time produces unnecessarily long delays and, moreover, is prone to errors.
The present invention is therefore directed to a method and a arrangement which enable prioritizable assignment of resources requested by competing resource requesters and which do not have the disadvantages described above.
Accordingly, the method of to the present invention advantageously affords the security of a handshake method without exhibiting the disadvantages of the numerous messages of a handshake protocol, because after a resource request it is only necessary to interrogate those potential resource requestors which have a higher priority than that resource requestor which has currently output its request. As such, depending on the number of allocated priorities and the number of potential resource requests, a corresponding number of acknowledgement messages are saved.
In another embodiment of the method, a resource request is sent directly to an assignment device because the latter can undertake the comparison of the priorities, (the sending of the interrogations to be acknowledged and the evaluation of the responses). The CTI connection to the switching device is being burdened by the control command for the resource assignment which has been determined by the assignment device as a consequence of its evaluation.
In a further embodiment of the method the message traffic with respect to the individual potential resource requests is controlled by the assignment device and event messages which arrive via the CTI connection from the switching device are duplicated and sent to the individual potential resource requestors. In this way, a defined and resource-sparing message traffic is ensured, without this necessitating additional devices.
In an advantageous manner, the potential resource requesters process the event messages one after the other, for example in a manner effected by a message queue, because this ensures in the system interconnection that, in connection with a response to be acknowledged, a resource request of a higher priority potential resource requestor is output to the assignment device prior to the acknowledgement of the inquiry to be acknowledged.
In another embodiment of the method the resources of a switching system are assigned to service features via a CTI connection because a service-feature server for customary switching devices can be provided in a simple manner, which server permits prioritized processing of service features.
A system having the ability to carry out the method according to the present invention is particularly advantageous because a switching device with a service-feature server is provided in this way, which server permits fast, optimal processing of resource requests without necessitating a real-time operating system or a complete handshake mechanism for its control.
In an embodiment of the system described, a decentralized device is connected to a switching device via a CTI connection, service-feature processes which require resources of the switching device running in the decentralized device. A development of this type enables prioritized service-feature control in a switching device without resulting in an increased message volume via the CTI connection.
In a further embodiment of the system described, individual resource requestors have memories for storing event messages which allow successive processing of these messages by the corresponding processes. This ensures that potential resource requesters, after receiving an inquiry to be acknowledged from the assignment device, output a resource request before they acknowledge the corresponding message.
Additional features and advantages of the present invention are described in, and will be apparent from, the following Detailed Description of the Preferred Embodiments and the Drawings.